package model

import (
	"gorm.io/gorm"
	"time"
)

type Room struct {
	Id         uint           `gorm:"column:id;type:bigint(20) UNSIGNED;primaryKey;not null;" json:"id"`
	UserId     uint           `gorm:"column:user_id;type:bigint(20) UNSIGNED;comment:用户ID;not null;default:0;" json:"user_id"`                    // 用户ID
	Name       string         `gorm:"column:name;type:varchar(255);comment:昵称;not null;" json:"name"`                                             // 昵称
	Sex        uint           `gorm:"column:sex;type:bigint(20) UNSIGNED;comment:性别 1:男2:女;not null;default:1;" json:"sex"`                       // 性别 1:男2:女
	Start      string         `gorm:"column:start;type:varchar(255);comment:开播时间;not null;" json:"start"`                                         // 开播时间
	End        string         `gorm:"column:end;type:varchar(255);comment:结束时间;not null;" json:"end"`                                             // 结束时间
	Status     uint           `gorm:"column:status;type:bigint(20) UNSIGNED;comment:状态 1:已下播2:直播中;not null;default:1;" json:"status"`             // 状态 1:已下播2:直播中
	Num        uint           `gorm:"column:num;type:bigint(20) UNSIGNED;comment:在线人数;not null;default:0;" json:"num"`                            // 在线人数
	GiftNum    uint           `gorm:"column:gift_num;type:bigint(20) UNSIGNED;comment:礼物数量;not null;default:0;" json:"gift_num"`                  // 礼物数量
	ContentNum uint           `gorm:"column:content_num;type:bigint(20) UNSIGNED;comment:评论数量;not null;default:0;" json:"content_num"`            // 评论数量
	CreateTime time.Time      `gorm:"column:create_time;type:datetime(3);comment:创建时间;not null;default:CURRENT_TIMESTAMP(3);" json:"create_time"` // 创建时间
	UpdateTime time.Time      `gorm:"column:update_time;type:datetime(3);comment:更新时间;not null;default:CURRENT_TIMESTAMP(3);" json:"update_time"` // 更新时间
	DeleteTime gorm.DeletedAt `gorm:"column:delete_time;type:datetime(3);default:NULL;" json:"delete_time"`
	Images     string         `gorm:"column:images;type:varchar(255);comment:图片;not null;" json:"images"` // 图片
}

func (r *Room) TableName() string {
	return "room"
}
